package com.cq.pojo;

import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

@Data
public class MediaSlot {
    // MediaSlotAnalysis
    private String campaignName;

    private String media;

    private String contactPoint;

    private String campaignId;

    private Date startDate;

    private Date endDate;

    private BigDecimal cost;

    private Long exposureCount;

    private Long exposureUserCount;

    private Long clickCount;

    private Long clickUserCount;

    private Long monthlyActiveMemberCount;

    private BigDecimal monthlyActiveMemberGmv;

    private Long newMemberAcquisitionCount;

    private BigDecimal newMemberAcquisitionGmv;

    private Long nextMonthActiveMemberCount;

    private BigDecimal nextMonthActiveMemberGmv;

    private Long nextMonthNewMemberCount;

    private BigDecimal nextMonthNewMemberGmv;

    // alog
    private BigDecimal cpm;// CPM=花费/曝光次数*1000

    private BigDecimal roi;// 月活会员ROI=月活会员GMV/花费

    private BigDecimal cac;// 月活会员CAC=花费/月活会员数

    private BigDecimal mamcRate;// 月活会员贡献率=月活会员数/周期月活人数

    private BigDecimal mamcGMVRate;// 月活会员GMV贡献率=月活会员GMV/周期月活GMV

    private BigDecimal rnmRoi;// 拉新会员ROI=拉新会员GMV/花费

    private BigDecimal rnmCac;// 拉新会员CAC=花费/拉新会员数

    private BigDecimal nmcRate;// 拉新会员贡献率=拉新会员数/周期月活人数

    private BigDecimal nmcGMVRate;// 拉新会员GMV贡献率=拉新会员GMV/周期月活GMV

    private BigDecimal pcmaGMV;// 活动期人均月活GMV=月活会员GMV/月活会员数

    private BigDecimal mpcmaGMV;// 次月人均月活GMV=次月月活会员GMV/次月月活会员数

    private BigDecimal pcnGMV;// 活动期人均拉新GMV=拉新会员GMV/拉新会员数

    private BigDecimal panGMV;// 次月人均拉新GMV=次月拉新会员GMV/次月拉新会员数

    private BigDecimal masmRate;// 月活次月留存率=次月月活会员数/月活会员数

    private BigDecimal mrrRate;// 拉新次月留存率=次月拉新会员数/拉新会员数

    // 均值
    private BigDecimal cpmAvg;// CPM=花费/曝光次数*1000

    private BigDecimal roiAvg;// 月活会员ROI=月活会员GMV/花费

    private BigDecimal cacAvg;// 月活会员CAC=花费/月活会员数

    private BigDecimal mamcRateAvg;// 月活会员贡献率=月活会员数/周期月活人数

    private BigDecimal mamcGMVRateAvg;// 月活会员GMV贡献率=月活会员GMV/周期月活GMV

    private BigDecimal rnmRoiAvg;// 拉新会员ROI=拉新会员GMV/花费

    private BigDecimal rnmCacAvg;// 拉新会员CAC=花费/拉新会员数

    private BigDecimal nmcRateAvg;// 拉新会员贡献率=拉新会员数/周期月活人数

    private BigDecimal nmcGMVRateAvg;// 拉新会员GMV贡献率=拉新会员GMV/周期月活GMV

    private BigDecimal pcmaGMVAvg;// 活动期人均月活GMV=月活会员GMV/月活会员数

    private BigDecimal mpcmaGMVAvg;// 次月人均月活GMV=次月月活会员GMV/次月月活会员数

    private BigDecimal pcnGMVAvg;// 活动期人均拉新GMV=拉新会员GMV/拉新会员数

    private BigDecimal panGMVAvg;// 次月人均拉新GMV=次月拉新会员GMV/次月拉新会员数

    private BigDecimal masmRateAvg;// 月活次月留存率=次月月活会员数/月活会员数

    private BigDecimal mrrRateAvg;// 拉新次月留存率=次月拉新会员数/拉新会员数

    // 差值
    private BigDecimal cpmDiff;// CPM=花费/曝光次数*1000

    private BigDecimal roiDiff;// 月活会员ROI=月活会员GMV/花费

    private BigDecimal cacDiff;// 月活会员CAC=花费/月活会员数

    private BigDecimal mamcRateDiff;// 月活会员贡献率=月活会员数/周期月活人数

    private BigDecimal mamcGMVRateDiff;// 月活会员GMV贡献率=月活会员GMV/周期月活GMV

    private BigDecimal rnmRoiDiff;// 拉新会员ROI=拉新会员GMV/花费

    private BigDecimal rnmCacDiff;// 拉新会员CAC=花费/拉新会员数

    private BigDecimal nmcRateDiff;// 拉新会员贡献率=拉新会员数/周期月活人数

    private BigDecimal nmcGMVRateDiff;// 拉新会员GMV贡献率=拉新会员GMV/周期月活GMV

    private BigDecimal pcmaGMVDiff;// 活动期人均月活GMV=月活会员GMV/月活会员数

    private BigDecimal mpcmaGMVDiff;// 次月人均月活GMV=次月月活会员GMV/次月月活会员数

    private BigDecimal pcnGMVDiff;// 活动期人均拉新GMV=拉新会员GMV/拉新会员数

    private BigDecimal panGMVDiff;// 次月人均拉新GMV=次月拉新会员GMV/次月拉新会员数

    private BigDecimal masmRateDiff;// 月活次月留存率=次月月活会员数/月活会员数

    private BigDecimal mrrRateDiff;// 拉新次月留存率=次月拉新会员数/拉新会员数

    // 占比列
    private BigDecimal costAcc;

    private BigDecimal exposureCountAcc;

    private BigDecimal exposureUserCountAcc;

    private BigDecimal clickCountAcc;

    private BigDecimal clickUserCountAcc;

    private BigDecimal mamcAcc;

    private BigDecimal mamgAcc;

    private BigDecimal nmacAcc;

    private BigDecimal nmagAcc;

    private BigDecimal nmamcAcc;

    private BigDecimal nmamgAcc;

    private BigDecimal nmnmcAcc;

    private BigDecimal nmnmgAcc;
}
